package com.hnkywl.sts.action.fkyj;


import com.hnkywl.sts.entity.fkyj.Syl;
import com.hnkywl.sts.entity.organ.Qyjg;
import com.hnkywl.sts.entity.xsgl.Kh;
import com.hnkywl.sts.service.kcgl.SskcService;
import com.hnkywl.sts.service.organ.QyjgService;
import com.hnkywl.sts.service.tjbb.YjbbService;
import com.hnkywl.sts.util.POIUtil;
import jxl.Sheet;
import jxl.Workbook;
import net.ruixin.web.struts2.SimpleActionSupport;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hssf.usermodel.*;
import org.apache.poi.hssf.util.Region;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.springframework.beans.factory.annotation.Autowired;

import java.io.File;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.regex.Pattern;

/**
 * Created by Melody on 14-3-12.
 */
@Namespace("/fkyj/yjbb")
public class YjbbAction extends SimpleActionSupport {

    private YjbbService yjbbService;
    private QyjgService qyjgService;

    //分页组件 起始位置
    private int page;
    //分页组件 页面大小
    private int rows;
    private String kh;
    private String code;
    private String name;
    private String ggxh;
    private Long sbgsId;
    private Float syl;
    private Date jsrqStart;
    private Date jsrqEnd;
    private Integer year;
    private Integer month;
    private Long cggsid;
    private String sort;
    private String order;
    private Long sylId;
    private Syl sylTemp;
    private Long khChart;
    private String codeChart;
    private String nameChart;
    private String ggxhChart;
    private Long cggsidChart;
    private String tj;
    private Date tjStart;
    private Date tjEnd;
    private String qcName;
    private String jcName;
    private Long id;
    private String jzsyl;
    private String qc;
    private File upload;
    private Date currentTime = new Date();
    private Date khkhztjrq;


    @Action("khkctjList")
    public void khkctjList() throws ParseException {
        this.renderJson(this.yjbbService.findKhkctjList(kh, cggsid, code, name, ggxh, sort, order, page, rows));
    }

    @Action("khkhztj")
    public String khkhztj() {
        currentTime = new Date();
        return SUCCESS;
    }

    @Action("khkhztjList")
    public void khkhztjList() throws ParseException {
        this.renderJson(this.yjbbService.findKhkhztjList(kh, cggsid, code, name, ggxh, khkhztjrq, sort, order, page, rows));
    }

    @Action("syltjList")
    public void syltjList() throws ParseException {
        this.renderJson(this.yjbbService.findSyltjList(kh, syl, jsrqStart, jsrqEnd, page, rows));
    }

    @Action("khkctjChart")
    public void khkctjChart() throws ParseException {

        // 查询客户物资以及物资库存值
        List kcList = this.yjbbService.findKhkctjChart(khChart, codeChart, nameChart, ggxhChart, cggsidChart, tj);

        // x轴数据
        StringBuffer xsb = new StringBuffer();
        xsb.append("[");
        // y轴数据
        StringBuffer ysb = new StringBuffer();
        ysb.append("[");

        if (null != kcList && kcList.size() > 0) {
            for (int i = 0; i < kcList.size(); i++) {
                Object[] objects = (Object[]) kcList.get(i);
                xsb.append("'" + objects[0] + "'");
                ysb.append(objects[1]);
                if (i != kcList.size() - 1) {
                    xsb.append(",");
                    ysb.append(",");
                }
            }
        }
        xsb.append("]");
        ysb.append("]");
        renderText("{ \"listXdata\":" + xsb + " , \"listYdata\":" + ysb + "}");
    }

    @Action("khkhztjChart")
    public void khkhztjChart() throws ParseException {

        // 查询客户
        List khList = this.yjbbService.findKhForKhz(cggsidChart);
        String[] strData = new String[7];

        // x轴数据
        StringBuffer xsb = new StringBuffer();
        xsb.append("[");
        // y轴数据
        StringBuffer ysb = new StringBuffer();
        ysb.append("[");
        String strm = null;
        String strd = null;
        for (int i = 6; i >= 0; i--) {
            Calendar calendar = Calendar.getInstance();
            calendar.add(Calendar.DATE, -i);
            int year = calendar.get(Calendar.YEAR);
            int month = calendar.get(Calendar.MONTH) + 1;
            int day = calendar.get(Calendar.DAY_OF_MONTH);
            xsb.append("'" + year + "-" + month + "-" + day + "'");
            if (i != 0) {
                xsb.append(",");
            }
            if (month < 10) {
                strm = "0" + month;
            } else {
                strm = month + "";
            }
            if (day < 10) {
                strd = "0" + day;
            } else {
                strd = "" + day;
            }
            String data = year + strm + strd;
            strData[i] = data;
        }

        if (null != khList && khList.size() > 0) {
            for (int j = 0; j < khList.size(); j++) {
                Object[] objects = (Object[]) khList.get(j);
                StringBuffer sysb = new StringBuffer();
                sysb.append("{name:'").append(objects[1]).append("',");

                StringBuffer sylData = new StringBuffer();
                sylData.append("data:[");
                // 查询客户物资以及物资控货值
                for (int i = 6; i >= 0; i--) {
                    List khzList = this.yjbbService.findKhkhztjChart(codeChart, nameChart, ggxhChart, Long.valueOf(objects[0].toString()), cggsidChart, strData[i]);
                    if (null != khzList && khzList.size() > 0) {
                        Object[] obj = (Object[]) khzList.get(0);
                        String khz = obj[1].toString();
                        sylData.append(khz);
                        if (i != 0) {
                            sylData.append(",");
                        }
                    }
                }
                sylData.append("]");
                sysb.append(sylData).append("}");
                if (j != khList.size() - 1) {
                    sysb.append(",");
                }
                ysb.append(sysb);
            }
        }
        xsb.append("]");
        ysb.append("]");
        renderText("{ \"listXdata\":" + xsb + " , \"listYdata\":" + ysb + "}");
    }
//    @Action("khkhztjChart")
//    public void khkhztjChart() throws ParseException {
//
//        // 查询客户物资以及物资控货值
//        List khzList = this.yjbbService.findKhkhztjChart(khChart, codeChart, nameChart, ggxhChart, cggsidChart, tj);
//
//        // x轴数据
//        StringBuffer xsb = new StringBuffer();
//        xsb.append("[");
//        // y轴数据
//        StringBuffer ysb = new StringBuffer();
//        ysb.append("[");
//
//        if (null != khzList && khzList.size() > 0) {
//            for (int i = 0; i < khzList.size(); i++) {
//                Object[] objects = (Object[]) khzList.get(i);
//                xsb.append("'" + objects[0] + "'");
//                ysb.append(objects[1]);
//                if (i != khzList.size() - 1) {
//                    xsb.append(",");
//                    ysb.append(",");
//                }
//            }
//        }
//        xsb.append("]");
//        ysb.append("]");
//        renderText("{ \"listXdata\":" + xsb + " , \"listYdata\":" + ysb + "}");
//    }

    @Action("syltjChart")
    public void syltjChart() throws ParseException {

        // 查询客户
        Qyjg qyjg = this.yjbbService.findSyltjKh(khChart);
        // 查询客户基准损益率
        List<Map> qyjgList = this.yjbbService.findQyjgSylByKhId(khChart);
        // x轴数据
        StringBuffer xsb = new StringBuffer();
        xsb.append("[");
        // y轴数据
        StringBuffer ysbData = new StringBuffer();
        ysbData.append("[");
        StringBuffer ysb = new StringBuffer();
        StringBuffer khName = new StringBuffer();
        khName.append("{name:'").append(qyjg.getQc()).append("',");
        StringBuffer sylData = new StringBuffer();
        sylData.append("data:[");
        // 图表最大值
        Float maxValue = 0.0f;
        // 提示信息
        String tipInfo = "0";
        if (null != tjStart && null == tjEnd) {
            tipInfo = "1";
        }
        if (null == tjStart && null != tjEnd) {
            tipInfo = "2";
        }
        if (null != tjStart && null != tjEnd) {
            Long days = (tjEnd.getTime() - tjStart.getTime()) / (3600 * 24 * 1000);
            if (days > 30) {
                tipInfo = "3";
            } else {
                tipInfo = "4";
            }
        }
        if (!StringUtils.equals(tipInfo, "4")) {
            Integer days = 29;
            String strm = null;
            String strd = null;
            for (int i = days; i >= 0; i--) {
                Calendar calendar = Calendar.getInstance();
                calendar.add(Calendar.DATE, -i);
                int year = calendar.get(Calendar.YEAR);
                int month = calendar.get(Calendar.MONTH) + 1;
                int day = calendar.get(Calendar.DAY_OF_MONTH);
                xsb.append("'" + month + "." + day + "'");
                if (i != 0) {
                    xsb.append(",");
                }
                if (month < 10) {
                    strm = "0" + month;
                } else {
                    strm = month + "";
                }
                if (day < 10) {
                    strd = "0" + day;
                } else {
                    strd = "" + day;
                }
                List sylList = this.yjbbService.findKhSyl(qyjg.getId(), year + "-" + strm + "-" + strd);
                if (null != sylList && sylList.size() > 0) {
                    sylData.append(sylList.get(0).toString());
                    if (maxValue < Float.parseFloat(sylList.get(0).toString())) {
                        maxValue = Float.parseFloat(sylList.get(0).toString());
                    }
                    sylData.append(",");
                } else {
                    sylData.append("0");
                    sylData.append(",");
                }
            }
        } else {
            Integer days = (int) (tjEnd.getTime() - tjStart.getTime()) / (3600 * 24 * 1000);
            String strm = null;
            String strd = null;
            for (int i = 0; i <= days; i++) {
                Calendar calendar = Calendar.getInstance();
                calendar.set(tjStart.getYear() + 1900, tjStart.getMonth(), tjStart.getDate());
                calendar.add(Calendar.DATE, i);
                int year = calendar.get(Calendar.YEAR);
                int month = calendar.get(Calendar.MONTH) + 1;
                int day = calendar.get(Calendar.DAY_OF_MONTH);
                xsb.append("'" + month + "." + day + "'");
                if (i != (days + 1)) {
                    xsb.append(",");
                }
                if (month < 10) {
                    strm = "0" + month;
                } else {
                    strm = month + "";
                }
                if (day < 10) {
                    strd = "0" + day;
                } else {
                    strd = "" + day;
                }
                List sylList = this.yjbbService.findKhSyl(qyjg.getId(), year + "-" + strm + "-" + strd);
                if (null != sylList && sylList.size() > 0) {
                    sylData.append(sylList.get(0).toString());
                    if (maxValue < Float.parseFloat(sylList.get(0).toString())) {
                        maxValue = Float.parseFloat(sylList.get(0).toString());
                    }
                    sylData.append(",");
                } else {
                    sylData.append("0");
                    sylData.append(",");
                }
            }
        }

        String strSyl = sylData.toString();
        String data = strSyl.substring(0, strSyl.length() - 1) + "]}";
        ysb.append(khName).append(data).append(",");

        String strYsb = ysb.toString();
        String sYsb = null;
        if (StringUtils.isNotBlank(strYsb)) {
            sYsb = strYsb.substring(0, strYsb.length() - 1);
        }
        ysbData.append(sYsb).append("]");
        xsb.append("]");
        StringBuffer yjzData = new StringBuffer();

        if (null != qyjgList && qyjgList.size() > 0) {
            yjzData.append(qyjgList.get(0).get("jzsyl").toString());
            String jzsyl = qyjgList.get(0).get("jzsyl").toString();
            if (StringUtils.isNotBlank(jzsyl)) {
                if (maxValue < Float.parseFloat(jzsyl)) {
                    maxValue = Float.parseFloat(jzsyl);
                }
            }
        }

        renderText("{ \"listXdata\":" + xsb + " , \"listYdata\":" + ysbData + " , \"listBsdata\":" +
                yjzData + " , \"listTitledata\":" + "' (  " + qyjg.getJc() + " ) '" + " , \"maxValue\":" + Math.ceil(maxValue)
                + " , \"tipInfo\":" + tipInfo + "}");
    }


    @Action("allSyltjChart")
    public void allSyltjChart() {
        // 查询客户
        List khList = this.yjbbService.findKhForSyl();

        String[] strData = new String[7];
        // x轴数据
        StringBuffer xsb = new StringBuffer();
        xsb.append("[");
        // y轴数据
        StringBuffer ysb = new StringBuffer();
        ysb.append("[");
        String strm = null;
        String strd = null;
        for (int i = 6; i >= 0; i--) {
            Calendar calendar = Calendar.getInstance();
            calendar.add(Calendar.DATE, -i);
            int year = calendar.get(Calendar.YEAR);
            int month = calendar.get(Calendar.MONTH) + 1;
            int day = calendar.get(Calendar.DAY_OF_MONTH);
            xsb.append("'" + year + "-" + month + "-" + day + "'");
            if (i != 0) {
                xsb.append(",");
            }
            if (month < 10) {
                strm = "0" + month;
            } else {
                strm = month + "";
            }
            if (day < 10) {
                strd = "0" + day;
            } else {
                strd = "" + day;
            }
            String data = year + strm + strd;
            strData[i] = data;
        }

        if (null != khList && khList.size() > 0) {
            for (int j = 0; j < khList.size(); j++) {
                Object[] objects = (Object[]) khList.get(j);
                StringBuffer sysb = new StringBuffer();
                sysb.append("{name:'").append(objects[1]).append("',");
                StringBuffer sylData = new StringBuffer();
                sylData.append("data:[");
                // 查询客户物资以及物资控货值
                for (int i = 6; i >= 0; i--) {
                    List sylList = this.yjbbService.findKhSyltjChart(Long.valueOf(objects[0].toString()), strData[i]);
                    if (null != sylList && sylList.size() > 0) {
                        Object[] obj = (Object[]) sylList.get(0);
                        String sylValue = obj[1].toString();
                        sylData.append(sylValue);
                    } else {
                        sylData.append(0);
                    }
                    if (i != 0) {
                        sylData.append(",");
                    }
                }
                sylData.append("]");
                sysb.append(sylData).append("}");
                if (j != khList.size() - 1) {
                    sysb.append(",");
                }
                ysb.append(sysb);
            }
        }
        xsb.append("]");
        ysb.append("]");
        renderText("{ \"listXdata\":" + xsb + " , \"listYdata\":" + ysb + "}");
    }

    /**
     * 损益率详细
     *
     * @param
     */

    @Action("syl_detail")
    public String syl_detail() {
        sylTemp = this.yjbbService.findSylDetail(sylId);
        if (null != sylTemp.getSyl()) {
            sylTemp.setSyl(sylTemp.getSyl() * 100);
        }
        return SUCCESS;
    }

    @Action("syltj")
    public String syltj() {
        currentTime = new Date();
        return SUCCESS;
    }

    @Action("sylwhList")
    public void sylwhList() {
        this.renderJson(this.yjbbService.findAllQyjgSyl(qcName, jcName, page, rows));
    }

    @Action("save_sylwh")
    public void save_sylwh() {
        try {
            if (isNum(jzsyl)) {
                this.yjbbService.updateSylwh(id, Float.parseFloat(jzsyl));
                renderJson("{\"statusCode\":200,\"message\":\"企业机构：\":" + qc + ",基准损益率修改成功！\"}");
            } else {
                renderJson("{\"statusCode\":300,\"message\":\"请输入0-100之间的数字！\"}");
            }

        } catch (Exception e) {
            e.printStackTrace();
            renderJson("{\"statusCode\":300,\"message\":\"" + e.getMessage() + "\"}");
        }
    }

    // 判断是否为0-100之间数字
    private boolean isNum(String jzsyl) {
        boolean isNum = jzsyl.matches("[\\d.]+");
        if (isNum) {
            if (Float.parseFloat(jzsyl) >= 0 && Float.parseFloat(jzsyl) <= 100) {
                return true;
            }
        }
        return false;
    }

    // 导出客户损益率信息
    @Action("sylwh_export")
    public String sylwh_export() {
        List<Map> qyjgList = this.yjbbService.findExportQyjgSyl();
        if (null != qyjgList && qyjgList.size() > 0) {
            //第一步，创建一个webbook，对应一个Excel文件
            HSSFWorkbook wb = new HSSFWorkbook();
            //第二步，在webbook中添加一个sheet,对应Excel文件中的sheet
            HSSFSheet sheet = wb.createSheet("sheet1");
            POIUtil poiUtil = new POIUtil(wb);
            //设置列宽
            sheet.setDefaultRowHeightInPoints(15);
            sheet.setDefaultColumnWidth((short) 12);
            sheet.setColumnWidth((short) 0, (short) (20 * 512));
            sheet.setColumnWidth((short) 1, (short) (20 * 512));
            sheet.setColumnWidth((short) 2, (short) (20 * 512));
            //第三步，在sheet中添加表头第0行,注意老版本poi对Excel的行数列数有限制short
            HSSFRow row = sheet.createRow((int) 0);
            row.setHeightInPoints(36);
            //第四步，创建单元格，并设置值表头  设置表头居中
            HSSFCellStyle titleStyle = poiUtil.createTitleHSSFCellStyle(wb);
            HSSFCell titleCell = row.createCell((short) 0);
            titleCell.setCellStyle(titleStyle);
            titleCell.setEncoding(HSSFCell.ENCODING_UTF_16);
            titleCell.setCellValue("客户基准损益率文件");
            sheet.addMergedRegion(new Region(0, (short) 0, 0, (short) 2));
            //生成第一行数据...表头
            HSSFCellStyle headerStyle = poiUtil.createHeader3HSSFCellStyle(wb);
            poiUtil.fillRow(sheet, headerStyle, 1, "全称", "简称", "基准损益率");
            //生成从第二行开始的企业机构数据
            for (int i = 2; i < qyjgList.size() + 2; i++) { //从第三行开始导入
                poiUtil.fillRow(sheet, headerStyle, i, qyjgList.get(i - 2).get("QC"), qyjgList.get(i - 2).get("JC"), qyjgList.get(i - 2).get("JZSYL"));
            }
            try {
                response.setContentType("application/x-download");
                String filedisplay = new String(("客户损益率批量导入.xls").getBytes("gb2312"), "iso8859-1");
                response.addHeader("Content-Disposition", "attachment;filename=" + filedisplay);
                wb.write(response.getOutputStream());
                response.getOutputStream().close();
            } catch (Exception e) {
                e.printStackTrace();
                renderText("位置异常，导出失败" + e.getMessage());
            }
        }
        return null;
    }

    // 导入客户损益率信息
    @Action("sylwh_import")
    public void sylwh_import() {
        try {
            List<Map<String, String>> listMap = new ArrayList<Map<String, String>>();
            Workbook book = Workbook.getWorkbook(upload);
            //  获得第一个工作表对象
            Sheet sheet = book.getSheet(0);
            //获取总行数
            int rows = sheet.getRows();
            for (int i = 2; i < rows; i++) { //从第三行开始导入
                Map<String, String> map = new HashMap<String, String>();
                if (sheet.getCell(0, i) != null && org.hibernate.tool.hbm2x.StringUtils.isNotEmpty(sheet.getCell(0, i).getContents())) {//第一列 编码
                    String khQcName = sheet.getCell(0, i).getContents().toString();
                    Qyjg qyjg = this.qyjgService.findQyjgByQc(khQcName);
                    if (null == qyjg) {
                        renderText("{\"statusCode\":\"300\", \"message\":\"第" + (i + 1) + "行，根据客户全称(" + khQcName + ")没有查询到客户，请检查客户全称是否正确！\"}");
                        return;
                    } else {
                        if (null != sheet.getCell(2, i) && org.hibernate.tool.hbm2x.StringUtils.isNotEmpty(sheet.getCell(2, i).getContents())) {
                            String syl = sheet.getCell(2, i).getContents().toString();
                            if (!isNum((syl))) {
                                renderText("{\"statusCode\":\"300\", \"message\":\"第" + (i + 1) + "行，客户(" + khQcName + ")基准损益率应为 0-100 之间数字，请检查！\"}");
                                return;
                            } else {
                                map.put("qjgyId", qyjg.getId().toString());
                                map.put("jzsyl", syl);
                                listMap.add(map);
                            }
                        } else {
                            renderText("{\"statusCode\":\"300\", \"message\":\"第" + (i + 1) + "行，客户(" + khQcName + ")基准损益率为空！\"}");
                            return;
                        }
                    }
                } else {
                    renderText("{\"statusCode\":\"300\", \"message\":\"第" + (i + 1) + "行，客户全称为空！\"}");
                    return;
                }
            }

            // 导入数据
            if (null != listMap) {
                this.yjbbService.saveOrUpdateSylwh(listMap);
                renderText("{\"statusCode\":\"200\", \"message\":\"客户基准损益率批量导入成功！\"}");
            }

        } catch (Exception e) {
            e.printStackTrace();
            renderText("{\"statusCode\":\"300\", \"message\":\"" + e.getMessage() + "\"}");
        }
    }

    @Autowired
    public void setYjbbService(YjbbService yjbbService) {
        this.yjbbService = yjbbService;
    }

    @Autowired
    public void setQyjgService(QyjgService qyjgService) {
        this.qyjgService = qyjgService;
    }

    public String getKh() {
        return kh;
    }

    public void setKh(String kh) {
        this.kh = kh;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getGgxh() {
        return ggxh;
    }

    public void setGgxh(String ggxh) {
        this.ggxh = ggxh;
    }

    public int getPage() {
        return page;
    }

    public void setPage(int page) {
        this.page = page;
    }

    public int getRows() {
        return rows;
    }

    public void setRows(int rows) {
        this.rows = rows;
    }

    public Long getSbgsId() {
        return sbgsId;
    }

    public void setSbgsId(Long sbgsId) {
        this.sbgsId = sbgsId;
    }

    public Float getSyl() {
        return syl;
    }

    public void setSyl(Float syl) {
        this.syl = syl;
    }

    public Date getJsrqStart() {
        return jsrqStart;
    }

    public void setJsrqStart(Date jsrqStart) {
        this.jsrqStart = jsrqStart;
    }

    public Date getJsrqEnd() {
        return jsrqEnd;
    }

    public void setJsrqEnd(Date jsrqEnd) {
        this.jsrqEnd = jsrqEnd;
    }

    public Long getKhChart() {
        return khChart;
    }

    public void setKhChart(Long khChart) {
        this.khChart = khChart;
    }

    public Integer getYear() {
        return year;
    }

    public void setYear(Integer year) {
        this.year = year;
    }

    public Integer getMonth() {
        return month;
    }

    public void setMonth(Integer month) {
        this.month = month;
    }

    public Long getCggsid() {
        return cggsid;
    }

    public void setCggsid(Long cggsid) {
        this.cggsid = cggsid;
    }

    public Long getCggsidChart() {
        return cggsidChart;
    }

    public void setCggsidChart(Long cggsidChart) {
        this.cggsidChart = cggsidChart;
    }

    public String getSort() {
        return sort;
    }

    public void setSort(String sort) {
        this.sort = sort;
    }

    public String getOrder() {
        return order;
    }

    public void setOrder(String order) {
        this.order = order;
    }

    public Long getSylId() {
        return sylId;
    }

    public void setSylId(Long sylId) {
        this.sylId = sylId;
    }

    public Syl getSylTemp() {
        return sylTemp;
    }

    public void setSylTemp(Syl sylTemp) {
        this.sylTemp = sylTemp;
    }

    public String getCodeChart() {
        return codeChart;
    }

    public void setCodeChart(String codeChart) {
        this.codeChart = codeChart;
    }

    public String getNameChart() {
        return nameChart;
    }

    public void setNameChart(String nameChart) {
        this.nameChart = nameChart;
    }

    public String getGgxhChart() {
        return ggxhChart;
    }

    public void setGgxhChart(String ggxhChart) {
        this.ggxhChart = ggxhChart;
    }

    public String getTj() {
        return tj;
    }

    public void setTj(String tj) {
        this.tj = tj;
    }

    public Date getTjStart() {
        return tjStart;
    }

    public void setTjStart(Date tjStart) {
        this.tjStart = tjStart;
    }

    public Date getTjEnd() {
        return tjEnd;
    }

    public void setTjEnd(Date tjEnd) {
        this.tjEnd = tjEnd;
    }

    public String getQcName() {
        return qcName;
    }

    public void setQcName(String qcName) {
        this.qcName = qcName;
    }

    public String getJcName() {
        return jcName;
    }

    public void setJcName(String jcName) {
        this.jcName = jcName;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getJzsyl() {
        return jzsyl;
    }

    public void setJzsyl(String jzsyl) {
        this.jzsyl = jzsyl;
    }

    public String getQc() {
        return qc;
    }

    public void setQc(String qc) {
        this.qc = qc;
    }

    public File getUpload() {
        return upload;
    }

    public void setUpload(File upload) {
        this.upload = upload;
    }

    public Date getCurrentTime() {
        return currentTime;
    }

    public void setCurrentTime(Date currentTime) {
        this.currentTime = currentTime;
    }

    public Date getKhkhztjrq() {
        return khkhztjrq;
    }

    public void setKhkhztjrq(Date khkhztjrq) {
        this.khkhztjrq = khkhztjrq;
    }
}
